﻿using System;
using System.Collections.Generic;
using System.Text;

namespace iMainAddin
{
	namespace iItem
    {
        public enum eType
        {
            CplusProject,
            CplusClass,
        }
        public abstract class iWizardInfo
        {
            protected eType m_eWizardType;
            protected string m_sProjectName;
            protected string m_sLocalDirectory;
            protected string m_sInstallationDirectory;
            protected bool m_bSilent;
            protected EnvDTE._DTE m_Dte;

            public abstract void SetContext(ref object[] contextParams);

            #region public Properties
            public eType nWizardType
            {
                get
                {
                    return this.m_eWizardType;
                }
                set
                {
                    this.m_eWizardType = value;
                }
            }
            public string sProjectName
            {
                get
                {
                    return this.m_sProjectName;
                }
                set
                {
                    this.m_sProjectName = value;
                }
            }
            public string sLocalDirectory
            {
                get
                {
                    return this.m_sLocalDirectory;
                }
                set
                {
                    this.m_sLocalDirectory = value;
                }
            }
            public string sInstallationDirectory
            {
                get
                {
                    return this.m_sInstallationDirectory;
                }
                set
                {
                    this.m_sInstallationDirectory = value;
                }
            }
            public bool bSilent
            {
                get
                {
                    return this.m_bSilent;
                }
                set
                {
                    this.m_bSilent = value;
                }
            }
            public EnvDTE._DTE rDte
            {
                get
                {
                    return this.m_Dte;
                }
                set
                {
                    this.m_Dte = value;
                }
            }
            #endregion
        }
    }
}